[INFO] cloning repository https://github.com/logseq/rsapi
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/logseq/rsapi" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flogseq%2Frsapi", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flogseq%2Frsapi'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0162b98aaec78aa991cdbca2e070816c6acd189a
[INFO] fixing logseq/rsapi against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flogseq%2Frsapi" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-7-tc2/source/.cargo/config.toml
[INFO] removed /workspace/builds/worker-7-tc2/source/rust-toolchain
[INFO] started tweaking git repo https://github.com/logseq/rsapi
[INFO] finished tweaking git repo https://github.com/logseq/rsapi
[INFO] tweaked toml for git repo https://github.com/logseq/rsapi written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/logseq/rsapi on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/logseq/rsapi already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: rsapi-jni/Cargo.toml: `crate_type` is deprecated in favor of `crate-type` and will not work in the 2024 edition
[INFO] [stderr] (in the `rsapi` library target)
[INFO] [stderr] warning: `rsapi-jni` (manifest) generated 1 warning
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 9a43be0b2cfafa2c18c18585206db56c6ce165e4ee1dc022dffc6bdf129e2ae8
[INFO] running `Command { std: "docker" "start" "9a43be0b2cfafa2c18c18585206db56c6ce165e4ee1dc022dffc6bdf129e2ae8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9a43be0b2cfafa2c18c18585206db56c6ce165e4ee1dc022dffc6bdf129e2ae8" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9a43be0b2cfafa2c18c18585206db56c6ce165e4ee1dc022dffc6bdf129e2ae8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9a43be0b2cfafa2c18c18585206db56c6ce165e4ee1dc022dffc6bdf129e2ae8" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating sync/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating lsq-encryption/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating rsapi-impl/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating rsapi-jni/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]        Fixed rsapi-jni/Cargo.toml (1 fix)
[INFO] [stderr]    Migrating packages/rsapi/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating decrypt-cli/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling thiserror v1.0.57
[INFO] [stderr]     Checking subtle v2.5.0
[INFO] [stderr]    Compiling syn v2.0.52
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling walkdir v2.4.0
[INFO] [stderr]    Compiling hashbrown v0.14.3
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling smallvec v1.13.1
[INFO] [stderr]    Compiling cc v1.0.88
[INFO] [stderr]    Compiling winnow v0.6.5
[INFO] [stderr]     Checking inout v0.1.3
[INFO] [stderr]    Compiling type-map v0.4.0
[INFO] [stderr]     Checking unicode-normalization v0.1.23
[INFO] [stderr]    Compiling indexmap v2.2.5
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]     Checking getrandom v0.2.12
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking mio v0.8.10
[INFO] [stderr]     Checking socket2 v0.5.6
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]     Checking getrandom v0.1.16
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]    Compiling self_cell v1.0.3
[INFO] [stderr]    Compiling serde_json v1.0.114
[INFO] [stderr]     Checking ryu v1.0.17
[INFO] [stderr]    Compiling ring v0.17.8
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling self_cell v0.10.3
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling rust-embed-utils v7.8.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking either v1.10.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking opaque-debug v0.3.0
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking poly1305 v0.8.0
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking digest v0.9.0
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking minimal-lexical v0.2.1
[INFO] [stderr]    Compiling arc-swap v1.6.0
[INFO] [stderr]    Compiling crc32fast v1.4.0
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling dashmap v5.5.3
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking md-5 v0.10.6
[INFO] [stderr]     Checking pbkdf2 v0.11.0
[INFO] [stderr]     Checking cookie-factory v0.3.2
[INFO] [stderr]     Checking io_tee v0.1.1
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking napi-sys v2.3.0
[INFO] [stderr]    Compiling memchr v2.7.1
[INFO] [stderr]    Compiling semver v1.0.22
[INFO] [stderr]     Checking url v2.5.0
[INFO] [stderr]     Checking flate2 v1.0.28
[INFO] [stderr]    Compiling anyhow v1.0.80
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling aho-corasick v1.1.2
[INFO] [stderr]    Compiling convert_case v0.6.0
[INFO] [stderr]    Compiling rustls v0.21.10
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking anstream v0.6.15
[INFO] [stderr]    Compiling jni v0.20.0
[INFO] [stderr]     Checking clap_lex v0.7.2
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]    Compiling static_vcruntime v2.0.0
[INFO] [stderr]    Compiling napi-build v2.1.2
[INFO] [stderr]     Checking clap_builder v4.5.13
[INFO] [stderr]    Compiling rsapi v0.0.1 (/opt/rustwide/workdir/packages/rsapi)
[INFO] [stderr]    Migrating packages/rsapi/build.rs from 2021 edition to 2024
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]     Checking crossbeam-deque v0.8.5
[INFO] [stderr]     Checking rayon-core v1.12.1
[INFO] [stderr]     Checking ordered-float v2.10.1
[INFO] [stderr]    Compiling regex-automata v0.4.5
[INFO] [stderr]     Checking bigdecimal v0.3.1
[INFO] [stderr]     Checking uuid v0.8.2
[INFO] [stderr]     Checking combine v4.6.6
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]    Compiling displaydoc v0.2.4
[INFO] [stderr]    Compiling thiserror-impl v1.0.57
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling tinystr v0.7.5
[INFO] [stderr]     Checking zeroize v1.7.0
[INFO] [stderr]     Checking tokio v1.36.0
[INFO] [stderr]     Checking unic-langid-impl v0.9.4
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]     Checking unic-langid v0.9.4
[INFO] [stderr]    Compiling rust-embed-impl v6.8.1
[INFO] [stderr]    Compiling fluent-syntax v0.11.0
[INFO] [stderr]     Checking intl-memoizer v0.5.1
[INFO] [stderr]     Checking fluent-langneg v0.13.0
[INFO] [stderr]     Checking intl_pluralrules v7.0.2
[INFO] [stderr]    Compiling rust-embed v6.8.1
[INFO] [stderr]     Checking chacha20 v0.9.1
[INFO] [stderr]     Checking fluent-bundle v0.15.2
[INFO] [stderr]     Checking salsa20 v0.10.2
[INFO] [stderr]     Checking curve25519-dalek v3.2.0
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]     Checking chacha20poly1305 v0.10.1
[INFO] [stderr]     Checking secrecy v0.8.0
[INFO] [stderr]     Checking fluent v0.16.0
[INFO] [stderr]    Compiling pin-project-internal v1.1.4
[INFO] [stderr]     Checking age-core v0.9.0
[INFO] [stderr]     Checking scrypt v0.10.0
[INFO] [stderr]    Compiling ctor v0.2.7
[INFO] [stderr]     Checking x25519-dalek v1.1.1
[INFO] [stderr]    Compiling regex v1.10.3
[INFO] [stderr]    Compiling clap_derive v4.5.13
[INFO] [stderr]     Checking pin-project v1.1.4
[INFO] [stderr]    Compiling napi-derive-backend v1.0.62
[INFO] [stderr]     Checking cesu8 v1.1.0
[INFO] [stderr]     Checking jni-sys v0.3.0
[INFO] [stderr]     Checking rayon v1.9.0
[INFO] [stderr]     Checking futures-executor v0.3.30
[INFO] [stderr]     Checking tokio-util v0.7.10
[INFO] [stderr]     Checking tokio-rustls v0.24.1
[INFO] [stderr]     Checking tokio-socks v0.5.1
[INFO] [stderr]     Checking async-compression v0.4.6
[INFO] [stderr]     Checking futures v0.3.30
[INFO] [stderr]     Checking clap v4.5.13
[INFO] [stderr]     Checking h2 v0.3.24
[INFO] [stderr]    Compiling napi-derive v2.16.0
[INFO] [stderr]     Checking chrono v0.4.34
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking internship v0.6.0
[INFO] [stderr]    Compiling toml_datetime v0.6.5
[INFO] [stderr]    Compiling serde_spanned v0.6.5
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling toml_edit v0.22.6
[INFO] [stderr]     Checking napi v2.16.0
[INFO] [stderr]     Checking s3-presign v0.0.2
[INFO] [stderr]     Checking edn-format v3.3.0
[INFO] [stderr]    Compiling find-crate v0.6.3
[INFO] [stderr]     Checking hyper v0.14.28
[INFO] [stderr]    Compiling toml v0.8.10
[INFO] [stderr]    Compiling i18n-config v0.4.6
[INFO] [stderr]    Compiling i18n-embed-impl v0.8.3
[INFO] [stderr]    Compiling i18n-embed v0.13.9
[INFO] [stderr]    Compiling i18n-embed-fl v0.6.7
[INFO] [stderr]     Checking hyper-rustls v0.24.2
[INFO] [stderr]     Checking reqwest v0.11.24
[INFO] [stderr]     Checking sync v0.1.0 (/opt/rustwide/workdir/sync)
[INFO] [stderr]    Migrating sync/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking age v0.9.2
[INFO] [stderr]     Checking lsq-encryption v0.0.1 (/opt/rustwide/workdir/lsq-encryption)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> sync/src/sync.rs:372:33
[INFO] [stdout]     |
[INFO] [stdout] 372 |         while let Some(chunk) = resp.chunk().await? {
[INFO] [stdout]     |                                 ------------------^
[INFO] [stdout]     |                                 |            |
[INFO] [stdout]     |                                 |            this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                 |            up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                 |            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                 |            `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                 up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                 up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 376 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes.rs:522:1
[INFO] [stdout]     |
[INFO] [stdout] 522 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes.rs:522:1
[INFO] [stdout]     |
[INFO] [stdout] 522 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes.rs:522:1
[INFO] [stdout]     |
[INFO] [stdout] 522 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> sync/src/sync.rs:103:43
[INFO] [stdout]     |
[INFO] [stdout] 103 |             if let Some(proxy) = unsafe { HTTPS_PROXY.as_ref() } {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> sync/src/sync.rs:136:46
[INFO] [stdout]     |
[INFO] [stdout] 136 |             if self.credentials.is_none() && TEMP_CREDENTIAL.is_some() {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> sync/src/sync.rs:137:39
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 let temp_credential = TEMP_CREDENTIAL.clone().unwrap();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> sync/src/sync.rs:372:33
[INFO] [stdout]     |
[INFO] [stdout] 372 |         while let Some(chunk) = resp.chunk().await? {
[INFO] [stdout]     |                                 ------------------^
[INFO] [stdout]     |                                 |            |
[INFO] [stdout]     |                                 |            this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                 |            up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                 |            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                 |            `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                 up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                 up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 376 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes.rs:522:1
[INFO] [stdout]     |
[INFO] [stdout] 522 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes.rs:522:1
[INFO] [stdout]     |
[INFO] [stdout] 522 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.5.0/src/bytes.rs:522:1
[INFO] [stdout]     |
[INFO] [stdout] 522 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> sync/src/sync.rs:103:43
[INFO] [stdout]     |
[INFO] [stdout] 103 |             if let Some(proxy) = unsafe { HTTPS_PROXY.as_ref() } {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> sync/src/sync.rs:136:46
[INFO] [stdout]     |
[INFO] [stdout] 136 |             if self.credentials.is_none() && TEMP_CREDENTIAL.is_some() {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> sync/src/sync.rs:137:39
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 let temp_credential = TEMP_CREDENTIAL.clone().unwrap();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating lsq-encryption/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> lsq-encryption/src/lib.rs:28:9
[INFO] [stdout]     |
[INFO] [stdout]  25 |     let secret = x25519::Identity::generate();
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `secret` calls a custom destructor
[INFO] [stdout]     |         `secret` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  28 |         secret.to_string().expose_secret().clone(),
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  31 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/secrecy-0.8.0/src/lib.rs:174:1
[INFO] [stdout]     |
[INFO] [stdout] 174 | / impl<S> Drop for Secret<S>
[INFO] [stdout] 175 | | where
[INFO] [stdout] 176 | |     S: Zeroize,
[INFO] [stdout]     | |_______________^
[INFO] [stdout] note: `secret` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-1.1.1/src/x25519.rs:112:17
[INFO] [stdout]     |
[INFO] [stdout] 112 | #[derive(Clone, Zeroize)]
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]     = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking rsapi-impl v0.1.0 (/opt/rustwide/workdir/rsapi-impl)
[INFO] [stderr]     Checking decrypt-cli v0.1.0 (/opt/rustwide/workdir/decrypt-cli)
[INFO] [stderr]    Migrating rsapi-impl/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> lsq-encryption/src/lib.rs:28:9
[INFO] [stdout]     |
[INFO] [stdout]  25 |     let secret = x25519::Identity::generate();
[INFO] [stdout]     |         ------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `secret` calls a custom destructor
[INFO] [stdout]     |         `secret` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  28 |         secret.to_string().expose_secret().clone(),
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  31 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/secrecy-0.8.0/src/lib.rs:174:1
[INFO] [stdout]     |
[INFO] [stdout] 174 | / impl<S> Drop for Secret<S>
[INFO] [stdout] 175 | | where
[INFO] [stdout] 176 | |     S: Zeroize,
[INFO] [stdout]     | |_______________^
[INFO] [stdout] note: `secret` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-1.1.1/src/x25519.rs:112:17
[INFO] [stdout]     |
[INFO] [stdout] 112 | #[derive(Clone, Zeroize)]
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]     = note: this warning originates in the derive macro `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating decrypt-cli/src/main.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed rsapi-impl/src/graph.rs (1 fix)
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> rsapi-impl/src/lib.rs:67:14
[INFO] [stdout]    |
[INFO] [stdout] 67 |     unsafe { GRAPHS.get_graph(graph_uuid) }
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]   --> rsapi-impl/src/graph.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 - pub static mut GRAPHS: Lazy<GraphCatalog> = Lazy::new(|| {
[INFO] [stdout] 27 + pub static GRAPHS: Lazy<GraphCatalog> = Lazy::new(|| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> rsapi-impl/src/graph.rs:67:14
[INFO] [stdout]    |
[INFO] [stdout] 67 |     unsafe { CANCELLACTION_TX.as_ref() }.map(|tx| tx.send(()));
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> rsapi-impl/src/graph.rs:86:14
[INFO] [stdout]    |
[INFO] [stdout] 86 |     unsafe { CANCELLACTION_TX.as_ref() }.map(|tx| tx.send(()));
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |         GRAPHS.add_graph(g);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]  27 - pub static mut GRAPHS: Lazy<GraphCatalog> = Lazy::new(|| {
[INFO] [stdout]  27 + pub static GRAPHS: Lazy<GraphCatalog> = Lazy::new(|| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:284:48
[INFO] [stdout]     |
[INFO] [stdout] 284 |         let mut cancel_notification = unsafe { CANCELLACTION_RX.as_ref().unwrap().clone() };
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:333:49
[INFO] [stdout]     |
[INFO] [stdout] 333 |                         if let Some(callback) = &PROGRESS_CALLBACK {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 333 |                         if let Some(callback) = &raw const PROGRESS_CALLBACK {
[INFO] [stdout]     |                                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:387:48
[INFO] [stdout]     |
[INFO] [stdout] 387 |         let mut cancel_notification = unsafe { CANCELLACTION_RX.as_ref().unwrap().clone() };
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:426:49
[INFO] [stdout]     |
[INFO] [stdout] 426 |                         if let Some(callback) = &PROGRESS_CALLBACK {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 426 |                         if let Some(callback) = &raw const PROGRESS_CALLBACK {
[INFO] [stdout]     |                                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:475:48
[INFO] [stdout]     |
[INFO] [stdout] 475 |         let mut cancel_notification = unsafe { CANCELLACTION_RX.as_ref().unwrap().clone() };
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:510:53
[INFO] [stdout]     |
[INFO] [stdout] 510 | ...                   if let Some(callback) = &PROGRESS_CALLBACK {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 510 |                             if let Some(callback) = &raw const PROGRESS_CALLBACK {
[INFO] [stdout]     |                                                      +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> rsapi-impl/src/lib.rs:67:14
[INFO] [stdout]    |
[INFO] [stdout] 67 |     unsafe { GRAPHS.get_graph(graph_uuid) }
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]   --> rsapi-impl/src/graph.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 - pub static mut GRAPHS: Lazy<GraphCatalog> = Lazy::new(|| {
[INFO] [stdout] 27 + pub static GRAPHS: Lazy<GraphCatalog> = Lazy::new(|| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> rsapi-impl/src/graph.rs:67:14
[INFO] [stdout]    |
[INFO] [stdout] 67 |     unsafe { CANCELLACTION_TX.as_ref() }.map(|tx| tx.send(()));
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> rsapi-impl/src/graph.rs:86:14
[INFO] [stdout]    |
[INFO] [stdout] 86 |     unsafe { CANCELLACTION_TX.as_ref() }.map(|tx| tx.send(()));
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |         GRAPHS.add_graph(g);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]  27 - pub static mut GRAPHS: Lazy<GraphCatalog> = Lazy::new(|| {
[INFO] [stdout]  27 + pub static GRAPHS: Lazy<GraphCatalog> = Lazy::new(|| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:284:48
[INFO] [stdout]     |
[INFO] [stdout] 284 |         let mut cancel_notification = unsafe { CANCELLACTION_RX.as_ref().unwrap().clone() };
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:333:49
[INFO] [stdout]     |
[INFO] [stdout] 333 |                         if let Some(callback) = &PROGRESS_CALLBACK {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 333 |                         if let Some(callback) = &raw const PROGRESS_CALLBACK {
[INFO] [stdout]     |                                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking rsapi-jni v0.1.0 (/opt/rustwide/workdir/rsapi-jni)
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:387:48
[INFO] [stdout]     |
[INFO] [stdout] 387 |         let mut cancel_notification = unsafe { CANCELLACTION_RX.as_ref().unwrap().clone() };
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:426:49
[INFO] [stdout]     |
[INFO] [stdout] 426 |                         if let Some(callback) = &PROGRESS_CALLBACK {
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 426 |                         if let Some(callback) = &raw const PROGRESS_CALLBACK {
[INFO] [stdout]     |                                                  +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:475:48
[INFO] [stdout]     |
[INFO] [stdout] 475 |         let mut cancel_notification = unsafe { CANCELLACTION_RX.as_ref().unwrap().clone() };
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-impl/src/graph.rs:510:53
[INFO] [stdout]     |
[INFO] [stdout] 510 | ...                   if let Some(callback) = &PROGRESS_CALLBACK {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 510 |                             if let Some(callback) = &raw const PROGRESS_CALLBACK {
[INFO] [stdout]     |                                                      +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating rsapi-jni/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> rsapi-jni/src/lib.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 | /         RUNNER
[INFO] [stdout] 30 | |             .as_ref()
[INFO] [stdout]    | |_____________________^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout] 25 - static mut RUNNER: Option<tokio::runtime::Runtime> = Option::None;
[INFO] [stdout] 25 + static RUNNER: Option<tokio::runtime::Runtime> = Option::None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> rsapi-jni/src/lib.rs:99:32
[INFO] [stdout]    |
[INFO] [stdout] 99 |     let env: JNIEnv = unsafe { VM.as_ref().unwrap().get_env().unwrap() };
[INFO] [stdout]    |                                ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-jni/src/lib.rs:115:28
[INFO] [stdout]     |
[INFO] [stdout] 115 |         let env = unsafe { VM.as_ref().unwrap() }
[INFO] [stdout]     |                            ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-jni/src/lib.rs:153:28
[INFO] [stdout]     |
[INFO] [stdout] 153 |         if let Some(err) = &LAST_ERROR {
[INFO] [stdout]     |                            ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 153 |         if let Some(err) = &raw const LAST_ERROR {
[INFO] [stdout]     |                             +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed rsapi-jni/src/lib.rs (18 fixes)
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> rsapi-jni/src/lib.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 | /         RUNNER
[INFO] [stdout] 30 | |             .as_ref()
[INFO] [stdout]    | |_____________________^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout] 25 - static mut RUNNER: Option<tokio::runtime::Runtime> = Option::None;
[INFO] [stdout] 25 + static RUNNER: Option<tokio::runtime::Runtime> = Option::None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating packages/rsapi/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> rsapi-jni/src/lib.rs:99:32
[INFO] [stdout]    |
[INFO] [stdout] 99 |     let env: JNIEnv = unsafe { VM.as_ref().unwrap().get_env().unwrap() };
[INFO] [stdout]    |                                ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-jni/src/lib.rs:115:28
[INFO] [stdout]     |
[INFO] [stdout] 115 |         let env = unsafe { VM.as_ref().unwrap() }
[INFO] [stdout]     |                            ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> rsapi-jni/src/lib.rs:153:28
[INFO] [stdout]     |
[INFO] [stdout] 153 |         if let Some(err) = &LAST_ERROR {
[INFO] [stdout]     |                            ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw const` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 153 |         if let Some(err) = &raw const LAST_ERROR {
[INFO] [stdout]     |                             +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> packages/rsapi/src/lib.rs:289:15
[INFO] [stdout]     |
[INFO] [stdout] 289 |           match graph
[INFO] [stdout]     |  _______________^
[INFO] [stdout] 290 | |             .update_remote_files(&base_path, &file_paths, txid, &token, None)
[INFO] [stdout] 291 | |             .await
[INFO] [stdout]     | |              ----^
[INFO] [stdout]     | |              |   |
[INFO] [stdout]     | |              |   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     | |              |   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |______________|___`__awaitee` calls a custom destructor
[INFO] [stdout]     |                |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     |                this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 297 |               Err(e) => {
[INFO] [stdout]     |                   -
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   `e` calls a custom destructor
[INFO] [stdout]     |                   `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 309 |       }
[INFO] [stdout]     |       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.80/src/error.rs:600:1
[INFO] [stdout]     |
[INFO] [stdout] 600 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.80/src/error.rs:600:1
[INFO] [stdout]     |
[INFO] [stdout] 600 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.80/src/error.rs:600:1
[INFO] [stdout]     |
[INFO] [stdout] 600 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> packages/rsapi/src/lib.rs:40:46
[INFO] [stdout]    |
[INFO] [stdout] 40 |             if let Some(callback) = unsafe { LOGGING_CALLBACK.as_ref() } {
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> packages/rsapi/src/lib.rs:57:17
[INFO] [stdout]    |
[INFO] [stdout] 57 |     if unsafe { LOGGING_CALLBACK.is_some() } {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> packages/rsapi/src/lib.rs:122:42
[INFO] [stdout]     |
[INFO] [stdout] 122 |         if let Some(callback) = unsafe { PROGRESS_CALLBACK.as_ref() } {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> packages/rsapi/src/lib.rs:289:15
[INFO] [stdout]     |
[INFO] [stdout] 289 |           match graph
[INFO] [stdout]     |  _______________^
[INFO] [stdout] 290 | |             .update_remote_files(&base_path, &file_paths, txid, &token, None)
[INFO] [stdout] 291 | |             .await
[INFO] [stdout]     | |              ----^
[INFO] [stdout]     | |              |   |
[INFO] [stdout]     | |              |   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     | |              |   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |______________|___`__awaitee` calls a custom destructor
[INFO] [stdout]     |                |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     |                this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 297 |               Err(e) => {
[INFO] [stdout]     |                   -
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   `e` calls a custom destructor
[INFO] [stdout]     |                   `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 309 |       }
[INFO] [stdout]     |       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.80/src/error.rs:600:1
[INFO] [stdout]     |
[INFO] [stdout] 600 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.80/src/error.rs:600:1
[INFO] [stdout]     |
[INFO] [stdout] 600 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.80/src/error.rs:600:1
[INFO] [stdout]     |
[INFO] [stdout] 600 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 13s
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> packages/rsapi/src/lib.rs:40:46
[INFO] [stdout]    |
[INFO] [stdout] 40 |             if let Some(callback) = unsafe { LOGGING_CALLBACK.as_ref() } {
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> packages/rsapi/src/lib.rs:57:17
[INFO] [stdout]    |
[INFO] [stdout] 57 |     if unsafe { LOGGING_CALLBACK.is_some() } {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> packages/rsapi/src/lib.rs:122:42
[INFO] [stdout]     |
[INFO] [stdout] 122 |         if let Some(callback) = unsafe { PROGRESS_CALLBACK.as_ref() } {
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] crater-edition-check: sync v0.1.0 (/opt/rustwide/workdir/sync) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: lsq-encryption v0.0.1 (/opt/rustwide/workdir/lsq-encryption) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: rsapi-impl v0.1.0 (/opt/rustwide/workdir/rsapi-impl) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: rsapi-jni v0.1.0 (/opt/rustwide/workdir/rsapi-jni) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: rsapi v0.0.1 (/opt/rustwide/workdir/packages/rsapi) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: decrypt-cli v0.1.0 (/opt/rustwide/workdir/decrypt-cli) updating edition from 2021 to 2024
[INFO] [stderr]     Checking lsq-encryption v0.0.1 (/opt/rustwide/workdir/lsq-encryption)
[INFO] [stderr]     Checking sync v0.1.0 (/opt/rustwide/workdir/sync)
[INFO] [stderr]    Compiling rsapi v0.0.1 (/opt/rustwide/workdir/packages/rsapi)
[INFO] [stderr]     Checking decrypt-cli v0.1.0 (/opt/rustwide/workdir/decrypt-cli)
[INFO] [stdout] warning: static `DNS_CACHE` is never used
[INFO] [stdout]   --> sync/src/doh.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | static DNS_CACHE: Lazy<DNSCache> = Lazy::new(DNSCache::new);
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DNS_HTTP_CLIENT` is never used
[INFO] [stdout]   --> sync/src/doh.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | static DNS_HTTP_CLIENT: Lazy<Client> = Lazy::new(|| {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `QUERY_LOCK` is never used
[INFO] [stdout]   --> sync/src/doh.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | static QUERY_LOCK: Lazy<Mutex<()>> = Lazy::new(|| Mutex::new(()));
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DoHResolver` is never constructed
[INFO] [stdout]   --> sync/src/doh.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct DoHResolver;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Entry` is never constructed
[INFO] [stdout]   --> sync/src/doh.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct Entry {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DNSCache` is never constructed
[INFO] [stdout]   --> sync/src/doh.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct DNSCache {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get`, and `insert` are never used
[INFO] [stdout]    --> sync/src/doh.rs:86:12
[INFO] [stdout]     |
[INFO] [stdout]  85 | impl DNSCache {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  86 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn get(&self, name: &Name) -> Option<Vec<SocketAddr>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn insert(&self, name: Name, addr: SocketAddr, ttl: Option<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DnsResponse` is never constructed
[INFO] [stdout]    --> sync/src/doh.rs:134:12
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub struct DnsResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DnsQuestion` is never constructed
[INFO] [stdout]    --> sync/src/doh.rs:162:12
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub struct DnsQuestion {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DnsAnswer` is never constructed
[INFO] [stdout]    --> sync/src/doh.rs:169:12
[INFO] [stdout]     |
[INFO] [stdout] 169 | pub struct DnsAnswer {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a shared reference to mutable static
[INFO] [stdout]    --> sync/src/sync.rs:103:43
[INFO] [stdout]     |
[INFO] [stdout] 103 |             if let Some(proxy) = unsafe { HTTPS_PROXY.as_ref() } {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `#[deny(static_mut_refs)]` (part of `#[deny(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a shared reference to mutable static
[INFO] [stdout]    --> sync/src/sync.rs:136:46
[INFO] [stdout]     |
[INFO] [stdout] 136 |             if self.credentials.is_none() && TEMP_CREDENTIAL.is_some() {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a shared reference to mutable static
[INFO] [stdout]    --> sync/src/sync.rs:137:39
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 let temp_credential = TEMP_CREDENTIAL.clone().unwrap();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `sync` (lib test) due to 3 previous errors; 10 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: static `DNS_CACHE` is never used
[INFO] [stdout]   --> sync/src/doh.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | static DNS_CACHE: Lazy<DNSCache> = Lazy::new(DNSCache::new);
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DNS_HTTP_CLIENT` is never used
[INFO] [stdout]   --> sync/src/doh.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | static DNS_HTTP_CLIENT: Lazy<Client> = Lazy::new(|| {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `QUERY_LOCK` is never used
[INFO] [stdout]   --> sync/src/doh.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | static QUERY_LOCK: Lazy<Mutex<()>> = Lazy::new(|| Mutex::new(()));
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DoHResolver` is never constructed
[INFO] [stdout]   --> sync/src/doh.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct DoHResolver;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Entry` is never constructed
[INFO] [stdout]   --> sync/src/doh.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct Entry {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DNSCache` is never constructed
[INFO] [stdout]   --> sync/src/doh.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct DNSCache {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get`, and `insert` are never used
[INFO] [stdout]    --> sync/src/doh.rs:86:12
[INFO] [stdout]     |
[INFO] [stdout]  85 | impl DNSCache {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  86 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn get(&self, name: &Name) -> Option<Vec<SocketAddr>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn insert(&self, name: Name, addr: SocketAddr, ttl: Option<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DnsResponse` is never constructed
[INFO] [stdout]    --> sync/src/doh.rs:134:12
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub struct DnsResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DnsQuestion` is never constructed
[INFO] [stdout]    --> sync/src/doh.rs:162:12
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub struct DnsQuestion {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DnsAnswer` is never constructed
[INFO] [stdout]    --> sync/src/doh.rs:169:12
[INFO] [stdout]     |
[INFO] [stdout] 169 | pub struct DnsAnswer {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a shared reference to mutable static
[INFO] [stdout]    --> sync/src/sync.rs:103:43
[INFO] [stdout]     |
[INFO] [stdout] 103 |             if let Some(proxy) = unsafe { HTTPS_PROXY.as_ref() } {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `#[deny(static_mut_refs)]` (part of `#[deny(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a shared reference to mutable static
[INFO] [stdout]    --> sync/src/sync.rs:136:46
[INFO] [stdout]     |
[INFO] [stdout] 136 |             if self.credentials.is_none() && TEMP_CREDENTIAL.is_some() {
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a shared reference to mutable static
[INFO] [stdout]    --> sync/src/sync.rs:137:39
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 let temp_credential = TEMP_CREDENTIAL.clone().unwrap();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `sync` (lib) due to 3 previous errors; 10 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "9a43be0b2cfafa2c18c18585206db56c6ce165e4ee1dc022dffc6bdf129e2ae8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9a43be0b2cfafa2c18c18585206db56c6ce165e4ee1dc022dffc6bdf129e2ae8", kill_on_drop: false }`
[INFO] [stdout] 9a43be0b2cfafa2c18c18585206db56c6ce165e4ee1dc022dffc6bdf129e2ae8
